package ltd.hanamaki.study.operator;

//逻辑运算符
public class Demo04 {

    public static void main(String[] args) {

        /*
        * 与 and &&
        * 或 or  ||
        * 非  ！
        *  */
        /* 逻辑运算符的结果：是布尔值 */
        boolean a = true;
        boolean b = false;
        /* 逻辑与：两个为真则为真 ，一个为假则为假 */
        System.out.println("逻辑与运算：" + (a && b));
        /* 逻辑或：有一个个为真则为真 */
        System.out.println("逻辑与运算：" + (a || b));
        /* 逻辑非：取反 */
        System.out.println("逻辑与运算：" + (!a));


        /* 短路运算 */
        int c = 5;
        boolean result = (c < 4) && (c++ < 4);
        System.out.println(result);//false
        System.out.println(c);//5

        /* 位运算  :是对进制的运算 */
        /* 左移乘2 */
        System.out.println(2 << 3); // 10000
        /* 右移除2 */
        System.out.println(8 >> 2);

    }

}
